Using Constraints with Memory to Implement Variable Elimination
نویسندگان
چکیده
Adaptive consistency is a solving algorithm for constraint networks. Its basic step is variable elimination: it takes a network as input, and produces an equivalent network with one less variable and one new constraint (the join of the variable bucket). This process is iterated until every variable is eliminated, and then all solutions can be computed without backtracking. A direct, naive implementation of variable elimination may use more space than needed, which renders the algorithm inapplicable in many cases. We present a more sophisticated implementation, based on the projection with memory of constraints. When a variable is projected out from a constraint, we keep the supports which that variable gave to the remaining tuples. Using this data structure, we compute a set of new factorized constraints, equivalent to the new constraint computed as the join of the variable bucket, but using less space for a wide range of problems. We provide experimental evidence of the benefits of our approach.
منابع مشابه
TECHNICAL REPORT Identifying Unnecessary Bounds Checks Through Block-Qualified Variable Elimination
Java’s memory-safety relies on the Java Virtual Machine checking that each access to an array does not exceed the bounds of that array. When static analysis can determine that some array access instruction will never use an out of bounds index, the cost of dynamically checking the index each time the instruction is executed can be avoided. This report introduces Block-Qualified Variable Elimina...
متن کاملDense Time and Temporal Constraints With 6 =
In some temporal reasoning systems, inequations can give rise to disjunctions of inequa-tions when variable elimination is performed. Motivated by this observation, we extend previous research on temporal constraints by considering disjunctions of inequations (under the assumption that time is dense.) We present results on consistency checking, canonical forms and variable elimination for this ...
متن کاملComputing Treewidth on the GPU
We present a parallel algorithm for computing the treewidth of a graph on a GPU. We implement this algorithm in OpenCL, and experimentally evaluate its performance. Our algorithm is based on an O(2)-time algorithm that explores the elimination orderings of the graph using a HeldKarp like dynamic programming approach. We use Bloom filters to detect duplicate solutions. GPU programming presents u...
متن کاملReasoning with Finite Set Constraints
The language of propositional logic is sometimes not appropriate to model real-world problems. Therefore, finite set constraints are introduced. A variable of a finite set constraint takes exactly one value out of a given set of values whereas a propositional variable is either true or false. Although the class of real-world problems which can be described using the language of propositional lo...
متن کاملUsing Markov Chain to Analyze Production Lines Systems with Layout Constraints
There are some problems with estimating the time required for the manufacturing process of products, especially when there is a variable serving time, like control stage. These problems will cause overestimation of process time. Layout constraints, reworking constraints and inflexible product schedule in multi product lines need a precise planning to reduce volume in particular situation of lin...
متن کامل